// //蓝桥
// #include<iostream>
// using namespace std;
// int main(){
//   int n=0,num=0;
//   cin>>n;
//   for(int i=1;i<=n;i++){
//     bool flag=1;
//     int j=i;
//     for(int k=1;j;k++){
//       if(j%10%2!=k%2){
//         flag=0;
//         break;
//       }
//       j/=10;
//     }
//     if(flag)num++;
//   }
//   cout<<num;
// }
//蓝桥
#include<iostream>
using namespace std;
int main(){
  int n=0,num=0;
  cin>>n;
  for(int i=1;i<=n;i++){
    if([](int i){
      for(int index=1;i;index^=1,i/=10){
        if(i%2!=index)return false;
      }
      return true;
    }(i)) num++;
  }
  cout<<num;
}